//set 是一种数据结构,是以数组形式构建的
let setArr = new Set(['jspang','技术胖','web']);
console.log(setArr);

// 添加元素,之前数组是使用 setArr.push()方法.
//元素都是唯一的,不能重复
setArr.add('jspang');
setArr.add('jspang111');
console.log(setArr);

//元素查找
console.log(setArr.has('jspang'));
console.log(setArr.has('jspangpang'));

//删除元素
setArr.delete('web');
console.log(setArr);

//清空元素
//setArr.clear();
console.log(setArr);

//遍历
for(let item of setArr){
    console.log(item);
}

//forEach
console.log('forEach 方法');
setArr.forEach((value) => console.log(value));

//size,相当于length
console.log(setArr.size);

//Set可以放数组,WeakSet可以放对象.
let weakobj = new WeakSet();
let obj={a:'jspang',b:'技术胖',c:'web'};
let obj1={a:'jspang',b:'技术胖',c:'web'};
let obj2=obj;

//下面是可以添加的,只有完全的对象一样才会不允许,
//栈不一样是可以添加的
weakobj.add(obj);
weakobj.add(obj1);

//以下的对象不会添加到weakSet
weakobj.add(obj2);

console.log(weakobj);